//package com.wgke.bluetooth.utils;
//
//import android.content.res.AssetManager;
//
//import com.eclipsesource.v8.V8;
//import com.eclipsesource.v8.V8Array;
//import com.eclipsesource.v8.V8Object;
//
//import java.io.BufferedReader;
//import java.io.IOException;
//import java.io.InputStream;
//import java.io.InputStreamReader;
//
//public class V8Util {
//
//    public static String runAllJsMethod(String dirPath, String fileName, String methodName, Object... args) {
//        AssetManager assetManager = CommonUtil.getContext().getAssets();
//        try {
//            StringBuilder sb = new StringBuilder();
//            String[] files = assetManager.list(dirPath);
//            if (files != null) {
//                for (String file : files) {
//                    String fullName = dirPath + "/" + file;
//                    if (file.endsWith(".js")) {
//                        sb.append(loadJsFromAssets(fullName));
//                        sb.append("\n");
//                    }
//                }
//            }
//            if (sb.length() > 0) {
//                V8 runtime = V8.createV8Runtime();
//                runtime.executeScript(sb.toString());
//                V8Object js = runtime.getObject(fileName);
//                //参数
//                V8Array parameters = new V8Array(runtime);
//                for (Object arg : args) {
//                    parameters.push(arg);
//                }
//                // 调用JS函数
//                V8Object result = js.executeObjectFunction(methodName, new V8Array(runtime));
//
//                js.close();
//                // 处理结果...
//                result.close();
//                runtime.close();
//            }
//
//        } catch (IOException e) {
//            e.printStackTrace();
//        }
//        return "";
//    }
//
//    //  调用JS方法
//    public static void runJsMethod(String jsPath, String methodName, Object... args) {
//        V8 runtime = V8.createV8Runtime();
//        // 读取JS文件内容
//        String jsCode = loadJsFromAssets(jsPath);
//        runtime.executeScript(jsCode);
//        //参数
//        V8Array parameters = new V8Array(runtime);
//        for (Object arg : args) {
//            parameters.push(arg);
//        }
//
//        // 调用JS函数
//        V8Object result = runtime.executeObjectFunction(methodName, new V8Array(runtime));
//
//        // 处理结果...
//        result.close();
//        runtime.release();
//    }
//
//    public static String loadJsFromAssets(String fileName) {
//        try {
//            InputStream is = CommonUtil.getContext().getAssets().open(fileName);
//            BufferedReader reader = new BufferedReader(new InputStreamReader(is));
//            StringBuilder sb = new StringBuilder();
//            String line;
//            while ((line = reader.readLine()) != null) {
//                sb.append(line).append("\n");
//            }
//            reader.close();
//            return sb.toString();
//        } catch (IOException e) {
//            e.printStackTrace();
//            return null;
//        }
//    }
//}
